<?php
/*
 * [JINYUN!] (C)2001-2099 Jinyunweb.com
 * This is NOT a freeware, use is subject to license terms
 * $Id: 2018-03-02 17:14:35 apple $
*/
namespace core;
defined('BY_JYA') or exit('error');
class message{	
	public function setnoticelog($msg='', $type=0, $url='', $uid=0){
		//type=0系统信息（面向客户uid=0），1平台公告（面向客户uid=0），2订单信息（面向平台uid=1）,3审核信息（面向平台uid=1）
		$data = array(
				'uid'=>$uid,
				'ip'=>getip(),
				'type'=>$type,
				'url'=>$url,
				'msg'=>$msg,
				'isread'=>0,
				'createtime'=>TIMESTAMP,
		);
		pdo_insert('core_notice_log', $data);
		return true;
	}
	public function upnoticelog($logid=1,$upall=false){
		//type=0系统信息（面向客户uid=0），1平台公告（面向客户uid=0），2订单信息（面向平台uid=1）,3审核信息（面向平台uid=1）
		if($upall){
			$data = array(
				'isread'=>1,
			);
			pdo_update('core_notice_log', $data,array('isread'=>0));
		}else{
			$data = array(
				'isread'=>1,
			);
			pdo_update('core_notice_log', $data,array('id'=>$logid));
		}
		return true;
	}
	public function getlog(){
		$noticelog = pdo_getall('core_notice_log', array('isread'=>0,'uniacid'=>$_SESSION['uniacid'],'uid'=>$_SESSION['uid']),'','','createtime desc');
		return $noticelog;
	}
	public function getonelog(){
		$noticelog = pdo_get('core_notice_log', array('isread'=>0,'uniacid'=>$_SESSION['uniacid'],'uid'=>$_SESSION['uid']));
		if($noticelog['id']){
			pdo_update('core_notice_log', array('isread'=>1),array('uniacid'=>$_SESSION['uniacid'],'id'=>$noticelog['id']));
		}
		return $noticelog;
	}
	//整理推送消息
	public function send_tpl_sms($mid,$msg_name='',$plugin_name='core',$itemid=0,$content='',$isexi=false){
		if(!$mid){
			if($isexi){
				exi('MID不存在','error');
			}
			return false;
		}
		$mobile=pdo_getcolumn('core_members',array('uniacid'=>$_SESSION['uniacid'],'id'=>$mid),'mobile');
		if(!$mobile){
			if($isexi){
				exi('手机不存在','error');
			}
			return false;
		}
		$tplmsg=$this->get_tpl_msg($msg_name,$plugin_name);
		if(!$tplmsg){
			if($isexi){
				exi('短信模板不存在','error');
			}
			return false;
		}
		if($tplmsg && $tplmsg!=1 && $itemid && $plugin_name=='jy_weishop'){
			$datas=model($plugin_name.'/notice')->gettpl_data($itemid);
			$contentarray=array();
			foreach ($datas as $d){
				if(strpos($tplmsg['content'], '[' . $d['name'] . ']') !== false && $d['smsvar']){
					$contentarray[$d['smsvar']]=$d['value'];
				}
			}
			$contentinfo=cfc('account')->replaceTemplate($tplmsg['content'],$datas);
		}
		if(!$mobile || !$tplmsg['content'] || !$tplmsg['smstplid']){
			if($isexi){
				exi('内容，签名不存在','error');
			}
			return false;
		}
		$this->send_sms($tplmsg['smstplid'],$mobile,$contentarray,$plugin_name,$contentinfo);
	}
	public function get_tpl_msg($name,$plugin_name='core',$remark='',$msgtpl_set=array()){
		$msgtpl_set=$msgtpl_set?:uni_setting('msgtpl_set');
		if($msgtpl_set && is_array($msgtpl_set)){
			foreach($msgtpl_set as &$mv){
				$tplinfo=pdo_get('core_tpl_template',array('id'=>$mv['tplid']),array('name','plugin_name'));
				if($tplinfo['plugin_name']==$plugin_name && $tplinfo['name']==$name){
					if($mv['opensms']){
						$msg=pdo_get('core_account_sms',array('uniacid'=>$_SESSION['uniacid'],'id'=>$mv['send_smsid']));
						//file_put_contents(ROOT_D.'/msg.txt',ijson_encode($msg));
						return $msg;
					}else{
						return false;
					}
				}
			}
		}
		return false;
	}
	function send_sms($template_id='',$mobile='',$content=array(),$plugin='core',$contentinfo='',$isexi=false){
		//发送短信
		cfc('core')->sendsms($mobile,$content,$template_id,$plugin,$contentinfo,true,$isexi);
		return true;
	}
	function send_email($email='',$title='',$content=''){
		//发送邮件
		cfc('http')->ihttp_email($email,$title,$content);
		return true;
	}
}